
PARTICLE DETECTION AND TRACKING GUI PROGRAM
BY OLEG POLYAKOV | PRINCETON UNIVERSITY | 2008 - 2013

This is the particle detection GUI program used to identify the individual particles and then tracking them.

This folder has the MATLAB scripts used to detect the particles.

DETECT_PARTICLES is a script file that is used to detect the particles
It is composed of the following functions, that you can use individually to build your own particle detection and tracking software!

Bpass3 - This function takes a stack of images (X-Y-Z stack) and applies a bandpass filter to them to highlight the particles and to remove the noise.

pkfind3_no_cut - This function detects all the local intensity maximum in the X-Y-Z image stack.

gaussfit3_no_cut - This function fits a 3D gaussian to each local intensity images. The output is a N by 6 matrix that has the positions and the widths of the fitted gaussians. The first three columns of this matrix and the positions of the particles.

Triangular_Trace - This function traces the trajectories so that there are no intersection of the particle trajectories. It works in the following way: A trajectory is constructed only if the bead movement between time frames t to t+1 and t+1 to t+2 corresponds to a bead movement from t to t+2.

Trace_Part_K - This completes the trajectories and outputs a cell array of all the trajectories.

Get_Trajectories - This combines the above two functions into one and outputs the trajectories as a cell array from the particle positions.

The following functions are used to filter the trajectories cell array by lengths, time, Z. These can be modified to have whatever filtering you want.

Sel_Traj_Len
Sel_Traj_T
Sel_Traj_Z


